/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package EJB.Business;

import Entity.Usuario;
import Exceptions.BusinessException;
import EJB.Entity.UsuarioFacade;
import javax.ejb.Stateless;
import java.util.Date;
import java.sql.Timestamp;

/**
 *
 * @author mquezada
 */
@Stateless
public class GestorDeUsuarios implements GestorDeUsuariosLocal {

    private UsuarioFacade ufacade;

    public boolean login(String username, String password) {
        Usuario usuario;
        usuario = ufacade.findByUsername(username);
        if (usuario.getPassword().equals(password)){
            return true;
        }
        return false;
    }

    public boolean register(String[] params) throws BusinessException {
        Usuario usuario = new Usuario();
        if(params.length!=7)
            throw new BusinessException("Cantidad de parametros erronea");
        usuario.setUsuario(params[0]);
        usuario.setPassword(params[1]);
        usuario.setEmail(params[2]);
        usuario.setNombre(params[3]);
        usuario.setApellido(params[4]);
        usuario.setTelefono(Integer.parseInt(params[5]));
        usuario.setDireccion(params[6]);
        Timestamp actual = new Timestamp(new Date().getTime());
        usuario.setFechaCreacion(actual);
        usuario.setAdministrador(0);
        usuario.setActivo(1);
        if(findUsuario(usuario.getUsuario()))
            return false;
        ufacade.create(usuario);
        return true;
    }

    public Usuario getUsuario(String username){
        return ufacade.findByUsername(username);
    }

    public boolean findUsuario(String username){
        if(ufacade.findByUsername(username) == null)return false;
        return true;
    }

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")

}
